package com.asp.aspchain.core.model;

import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableName;
import org.apache.commons.lang3.builder.ReflectionToStringBuilder;

import java.io.Serializable;
import java.util.Date;

/**
 * 
 *
 * @author aspire
 * @Date 2018-10-24 11:06
 */
@TableName("t_abc_mgr_account")
public class MgrAccountModel extends Model<MgrAccountModel> {

	private static final long serialVersionUID = 1L;

	/**
	 * 智能合约帐户 app+‘appid'+role mgt帐户则为‘mgt’+role
	 * 
	 */
	private String accoutkey;
	/**
	 * 区块链分配的管理账户
	 * 
	 */
	private String accountid;
	/**
	 * 账户名称
	 * 
	 */
	private String accountname;
	/**
	 * 账户类型 10 app类型 （智能合约） 11 mgt类型 （全局）
	 * 
	 */
	private String accounttype;
	/**
	 * appid
	 * 
	 */
	private Integer appid;
	/**
	 * 角色类型 10xxxx代表app类的角色 11xxxx代表 mgt的角色
	 * 
	 */
	private String role;
	/**
	 * 角色名称
	 * 
	 */
	private String rolename;
	/**
	 * 创建时间
	 * 
	 */
	private Date createtime;
	/**
	 * 更新时间
	 * 
	 */
	private Date updatetime;
	/**
	 * token余额类型 eth (以太TOKEN） sxt（碎星TOKEN） sxt(黑转TOKEN）
	 * 
	 */
	private String tokentype;

	/**
	 * 获取: 智能合约帐户 app+‘appid'+role mgt帐户则为‘mgt’+role
	 * 
	 */
	public String getAccoutkey() {
		return accoutkey;
	}

	/**
	 * 设置: 智能合约帐户 app+‘appid'+role mgt帐户则为‘mgt’+role
	 * 
	 */
	public void setAccoutkey(String accoutkey) {
		this.accoutkey = accoutkey;
	}

	/**
	 * 获取: 区块链分配的管理账户
	 * 
	 */
	public String getAccountid() {
		return accountid;
	}

	/**
	 * 设置: 区块链分配的管理账户
	 * 
	 */
	public void setAccountid(String accountid) {
		this.accountid = accountid;
	}

	/**
	 * 获取: 账户名称
	 * 
	 */
	public String getAccountname() {
		return accountname;
	}

	/**
	 * 设置: 账户名称
	 * 
	 */
	public void setAccountname(String accountname) {
		this.accountname = accountname;
	}

	/**
	 * 获取: 账户类型 10 app类型 （智能合约） 11 mgt类型 （全局）
	 * 
	 */
	public String getAccounttype() {
		return accounttype;
	}

	/**
	 * 设置: 账户类型 10 app类型 （智能合约） 11 mgt类型 （全局）
	 * 
	 */
	public void setAccounttype(String accounttype) {
		this.accounttype = accounttype;
	}

	/**
	 * 获取: appid
	 * 
	 */
	public Integer getAppid() {
		return appid;
	}

	/**
	 * 设置: appid
	 * 
	 */
	public void setAppid(Integer appid) {
		this.appid = appid;
	}

	/**
	 * 获取: 角色类型 10xxxx代表app类的角色 11xxxx代表 mgt的角色
	 * 
	 */
	public String getRole() {
		return role;
	}

	/**
	 * 设置: 角色类型 10xxxx代表app类的角色 11xxxx代表 mgt的角色
	 * 
	 */
	public void setRole(String role) {
		this.role = role;
	}

	/**
	 * 获取: 角色名称
	 * 
	 */
	public String getRolename() {
		return rolename;
	}

	/**
	 * 设置: 角色名称
	 * 
	 */
	public void setRolename(String rolename) {
		this.rolename = rolename;
	}

	/**
	 * 获取: 创建时间
	 * 
	 */
	public Date getCreatetime() {
		return createtime;
	}

	/**
	 * 设置: 创建时间
	 * 
	 */
	public void setCreatetime(Date createtime) {
		this.createtime = createtime;
	}

	/**
	 * 获取: 更新时间
	 * 
	 */
	public Date getUpdatetime() {
		return updatetime;
	}

	/**
	 * 设置: 更新时间
	 * 
	 */
	public void setUpdatetime(Date updatetime) {
		this.updatetime = updatetime;
	}

	/**
	 * 获取: token余额类型 eth (以太TOKEN） sxt（碎星TOKEN） sxt(黑转TOKEN）
	 * 
	 */
	public String getTokentype() {
		return tokentype;
	}

	/**
	 * 设置: token余额类型 eth (以太TOKEN） sxt（碎星TOKEN） sxt(黑转TOKEN）
	 * 
	 */
	public void setTokentype(String tokentype) {
		this.tokentype = tokentype;
	}

	@Override
	protected Serializable pkVal() {
		return this.accoutkey;
	}

	@Override
	public String toString() {
		return ReflectionToStringBuilder.toString(this);
	}
}
